#!/usr/bin/env python
# # -*- coding: utf-8 -*-

"""
@File:      RepetitionCheckTool.py
@Author:    Jim.Dai.Cn
@Date:      2024/6/11 19:17
@Desc:         
"""

from qwen_agent.tools.base import BaseTool, register_tool
import json5
import urllib.parse

'''
    语句重复检查：部分产品复活价格线价格高于集采中标价格，部分产品复活价格线价格高于集采中标价格。
'''

@register_tool('repetition_check_tool')
class RepetitionCheckTool(BaseTool):
    # `description` 用于告诉智能体该工具的功能。
    description = '检查文章内容是否存在语句重复'
    # `parameters` 告诉智能体该工具有哪些输入参数。
    parameters = [{
        'name': 'prompt',
        'type': 'string',
        'description': '检查文章内容是否存在语句重复',
        'required': True
    }]

    def call(self, params: str, **kwargs) -> str:
        # `params` 是由 LLM 智能体生成的参数。
        prompt = json5.loads(params)['prompt']
        prompt = urllib.parse.quote(prompt)
        return json5.dumps(
            {'image_url': f'https://image.pollinations.ai/prompt/{prompt}'},
            ensure_ascii=False)
